package com.ht.base.system.client;

import com.ht.base.system.common.pojo.bo.SysMenuBO;
import org.base.common.appexception.AppException;
import org.base.common.appexception.ResultData;

import java.util.List;

/**
 * @Author hdengxian
 * @Date 2023/8/15 17:17
 */
public interface SysMenuClient {
    /**
     * 新增菜单、按钮接口
     * @param menuBO
     * @return
     * @throws AppException
     */
    ResultData<Boolean> insertMenu(SysMenuBO menuBO) throws AppException;

    /**
     * 修改菜单接口
     * @param menuBO
     * @return
     * @throws AppException
     */
    ResultData<Boolean> updateMenu(SysMenuBO menuBO) throws AppException;

    /**
     * 通过ID删除菜单表的数据
     * @param sysMenuId
     * @return
     * @throws AppException
     */
    ResultData<Boolean> delMenu(Long sysMenuId) throws AppException;

    /**
     * 通过菜单ID集合查询菜单
     * @param menus
     * @return
     * @throws AppException
     */
    ResultData<List<SysMenuBO>> findMenuByIdList(List<Long> menus) throws AppException;
}
